package com.project.easy.common.util.dto;

import java.io.Serializable;
import java.util.Map;
import java.util.Set;

/**
 * @ClassName UserInfo
 * @Description
 * @Author GreatorMan.cool
 * @Date 2021/2/19 16:02
 * @Version 1.0
 **/
public class UserInfo implements Serializable {
    /**
     * 构造方法
     * @param userName 用户名称
     * @param acc 用户登录账户
     * @param userId 用户ID
     */
    public UserInfo(String userName, String acc, Long userId, String password) {
        this.userName = userName;
        this.acc = acc;
        this.userId = userId;
        this.password = password;
    }
    /**
     * 构造方法
     * @param userName 用户名称
     * @param acc 用户登录账户
     * @param userId 用户ID
     */
    public UserInfo(String userName, String acc, Long userId) {
        this.userName = userName;
        this.acc = acc;
        this.userId = userId;
    }
    public UserInfo() {
    }
    /**
     * 密码
     */
    private String password;
    /**
     * 用户名称
     */
    private String userName;
    /**
     * 登录账户
     */
    private String acc;
    /**
     * 用户ID信息
     */
    private Long userId;
    /**
     * 部门编码
     */
    private String departCode;
    /**
     * 用户是否禁用
     */
    private Boolean states = Boolean.FALSE;
    /**
     * 权限集合
     */
    private Set<AuthDto> auth;
    /**
     * 功能
     */
    private  Set<String> function;
    /**
     * 用户扩展信息
     */
    private Map<String, String> userExMap;

    public String getDepartCode() {
        return departCode;
    }

    public void setDepartCode(String departCode) {
        this.departCode = departCode;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public Map<String, String> getUserExMap() {
        return userExMap;
    }

    public void setUserExMap(Map<String, String> userExMap) {
        this.userExMap = userExMap;
    }

    public String getUserName() {
        return userName;
    }

    public Set<String> getFunction() {
        return function;
    }

    public void setFunction(Set<String> function) {
        this.function = function;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getAcc() {
        return acc;
    }

    public void setAcc(String acc) {
        this.acc = acc;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Boolean getStates() {
        return states;
    }

    public void setStates(Boolean states) {
        this.states = states;
    }

    public Set<AuthDto> getAuth() {
        return auth;
    }

    public void setAuth(Set<AuthDto> auth) {
        this.auth = auth;
    }
}
